package arithmeticSortList2;

import java.util.Scanner;

/**
* @author jie
* @version 创建时间：2018年4月18日 下午11:05:08
* 类说明
*/
public class RankCharAscII {
	public static void main(String[] args) {
		String inputStr = getInputStr();
		System.out.println("得到的字符串：" + inputStr);

		char[] inputChar=new char[inputStr.length()];
		for (int i = 0; i < inputChar.length; i++) {
			inputChar[i]=inputStr.charAt(i);
		}
		System.err.println(inputChar);
		
		for (int i = 0; i < inputChar.length-1; i++) {
			for (int j = 0; j < inputChar.length-1-i; j++) {
				
				if (inputChar[j]>inputChar[j+1]) {
					char c = inputChar[j+1];
					inputChar[j+1]=inputChar[j];
					inputChar[j]=c;
				}
			}
			
		}
		System.out.println(inputChar);
		
	}

	private static String getInputStr() {
		System.out.println("请输入应为字母：");
		try {
			// 缺点一: 该方法能获取从键盘输入的字符，但只能针对一个字符的获取
			// 缺点二: 获取的只是char类型的。如果想获得int,float等类型的输入,比较麻烦。
			// char read = (char) System.in.read();

			// 优点: 可以获取键盘输入的字符串
			// 缺点: 如何要获取的是int,float等类型的仍然需要转换
			// InputStreamReader iStreamReader=new InputStreamReader(System.in);
			//
			// BufferedReader bReader=new BufferedReader(iStreamReader);
			// String readLine = bReader.readLine();

			// Scanner类中的方法
			// 优点一: 可以获取键盘输入的字符串
			// 优点二: 有现成的获取int,float等类型数据，非常强大，也非常方便；
			// 缺点：输入类型错误 崩溃
			Scanner sc = new Scanner(System.in);
			System.out.println("ScannerTest, Please Enter Name:");
			String name = sc.nextLine();
//			// 读取字符串型输入
//			System.out.println("ScannerTest, Please Enter Age:");
//			int age = sc.nextInt(); // 读取整型输入
//			System.out.println("ScannerTest, Please Enter Salary:");
//			float salary = sc.nextFloat(); // 读取float型输入
//			System.out.println("Your Information is as below:");
//			System.out.println("Name:" + name + "\n" + "Age:" + age + "\n" + "Salary:" + salary);
			// return readLine;
			return name;
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();

		}

		return "";
	}

}
